/* 主题CSS变量定义 */

/* ========== 浅色主题 (默认) ========== */
:root,
.light-theme {
  /* 主色调 */
  --primary-color: #4a90e2;
  --primary-hover: #357abd;
  --primary-light: #e3f2fd;

  /* 背景色 */
  --bg-primary: #ffffff;
  --bg-secondary: #f5f7fa;
  --bg-tertiary: #e8ecf1;

  /* 文字颜色 */
  --text-primary: #2c3e50;
  --text-secondary: #666666;
  --text-tertiary: #999999;
  --text-inverse: #ffffff;

  /* 边框颜色 */
  --border-color: #e0e0e0;
  --border-light: #f0f0f0;
  --border-dark: #cccccc;

  /* 卡片 */
  --card-bg: #ffffff;
  --card-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  --card-hover-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);

  /* 侧边栏 */
  --sidebar-bg: #2c3e50;
  --sidebar-text: #ecf0f1;
  --sidebar-hover: #34495e;
  --sidebar-active: #4a90e2;

  /* 头部 */
  --header-bg: #ffffff;
  --header-text: #2c3e50;
  --header-border: #e0e0e0;

  /* 输入框 */
  --input-bg: #ffffff;
  --input-border: #d1d5db;
  --input-focus: #4a90e2;
  --input-text: #2c3e50;
  --input-placeholder: #9ca3af;

  /* 按钮 */
  --btn-primary-bg: #4a90e2;
  --btn-primary-hover: #357abd;
  --btn-primary-text: #ffffff;
  --btn-secondary-bg: #6c757d;
  --btn-secondary-hover: #5a6268;
  --btn-secondary-text: #ffffff;

  /* 状态颜色 */
  --success-color: #10b981;
  --warning-color: #f59e0b;
  --error-color: #ef4444;
  --info-color: #3b82f6;

  /* 遮罩 */
  --modal-overlay: rgba(0, 0, 0, 0.5);
  --skeleton-bg: #f0f0f0;
  --skeleton-highlight: #f8f8f8;

  /* 滚动条 */
  --scrollbar-bg: #f1f1f1;
  --scrollbar-thumb: #c1c1c1;
  --scrollbar-thumb-hover: #a8a8a8;
}

/* ========== 深色主题 ========== */
.dark-theme {
  /* 主色调 */
  --primary-color: #60a5fa;
  --primary-hover: #3b82f6;
  --primary-light: #1e3a5f;

  /* 背景色 */
  --bg-primary: #1a1a1a;
  --bg-secondary: #242424;
  --bg-tertiary: #2d2d2d;

  /* 文字颜色 */
  --text-primary: #e5e7eb;
  --text-secondary: #9ca3af;
  --text-tertiary: #6b7280;
  --text-inverse: #1a1a1a;

  /* 边框颜色 */
  --border-color: #374151;
  --border-light: #2d2d2d;
  --border-dark: #4b5563;

  /* 卡片 */
  --card-bg: #242424;
  --card-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  --card-hover-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);

  /* 侧边栏 */
  --sidebar-bg: #1f2937;
  --sidebar-text: #e5e7eb;
  --sidebar-hover: #374151;
  --sidebar-active: #60a5fa;

  /* 头部 */
  --header-bg: #1f2937;
  --header-text: #e5e7eb;
  --header-border: #374151;

  /* 输入框 */
  --input-bg: #2d2d2d;
  --input-border: #4b5563;
  --input-focus: #60a5fa;
  --input-text: #e5e7eb;
  --input-placeholder: #6b7280;

  /* 按钮 */
  --btn-primary-bg: #60a5fa;
  --btn-primary-hover: #3b82f6;
  --btn-primary-text: #1a1a1a;
  --btn-secondary-bg: #4b5563;
  --btn-secondary-hover: #6b7280;
  --btn-secondary-text: #e5e7eb;

  /* 状态颜色 */
  --success-color: #34d399;
  --warning-color: #fbbf24;
  --error-color: #f87171;
  --info-color: #60a5fa;

  /* 遮罩 */
  --modal-overlay: rgba(0, 0, 0, 0.7);
  --skeleton-bg: #2d2d2d;
  --skeleton-highlight: #3d3d3d;

  /* 滚动条 */
  --scrollbar-bg: #2d2d2d;
  --scrollbar-thumb: #4b5563;
  --scrollbar-thumb-hover: #6b7280;
}

/* ========== 全局样式应用 ========== */
body {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* 滚动条样式 */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--scrollbar-bg);
}

::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover);
}

/* 平滑过渡 */
* {
  transition: background-color 0.3s ease,
              border-color 0.3s ease,
              color 0.3s ease,
              box-shadow 0.3s ease;
}

/* 禁用某些元素的过渡 */
input,
textarea,
select,
button {
  transition: background-color 0.2s ease,
              border-color 0.2s ease,
              color 0.2s ease;
}
